package com.tao.YanMoDesignPattern.Order.pattern;

/**
 * @Author Mi_Tao
 * @Date 2023/8/26
 * @Description
 * @Version 1.0
 **/
public class ConcreteCommand  implements Command{

    // 持有相应的接受者对象
    private Receiver receiver;

    // 示意，命令对象可以有自己的状态
    private String state;


    // 传入相应的接受者
    public ConcreteCommand(Receiver receiver){
        this.receiver = receiver;
    }

    // 执行命令
    @Override
    public void execute() {
        // 执行操作  核心所在 通常会转调接受者对象的相应操作，让接受者来真正执行功能
        receiver.action();
    }
}
